package immigration;

import java.util.LinkedList;
import java.util.List;
import java.util.Set;



import ga.*;
import operations.Operation;
import util.DebugConfig;
import util.Log;
public abstract class ImmigrationStrategy implements Immigration{
	protected abstract Set<Individual> getImmigrant() ;
//	protected abstract Set<Individual> mutate(Set<Individual> individual) ;

	protected GAInfo gaInfo;
	public Set<Individual> generateImmigrant() {
		Set<Individual> individual =this.getImmigrant();

		return individual;	
	}
	public final void setExtraInfo(GAInfo gaInfo) {
		this.gaInfo     = gaInfo;
	}

}
